/* Flow Engine Shader */

Texture2D	g_Texture : register(t0);

SamplerState TextureSampler
{
	Filter = MIN_MAG_MIP_LINEAR;
	AddressU = Wrap;
	AddressV = Wrap;
};

struct PsInput
{
	float4	Position	: SV_POSITION;
	float4	Color		: COLOR;
	float2	TexCoords	: TEXCOORDS;
};

struct PsOutput
{
	float4 Color		: SV_TARGET;
};

PsOutput main(PsInput input)
{
	PsOutput output = (PsOutput)input;

	float4 texColor = g_Texture.Sample(TextureSampler, input.TexCoords);
	output.Color = texColor * input.Color;
	output.Color = float4(1.0f - output.Color.r, 1.0f - output.Color.g, 1.0f - output.Color.b, output.Color.a);

	return output;
}